In the field of information processing etc., semiconductor circuits are responsible for numerical computation and logical computation. Accordingly, semiconductor circuits are extremely important in the field of information processing etc., and various circuits are currently being designed.
In semiconductor circuits, first of all information is divided into analog information and digital information, but it is necessary to perform arithmetic processing after converting all information to digital information in order to carry out computation maintaining high reliability. For this reason, it is a general rule in the present invention that analog information is converted to multi-value information or a digital signal and then arithmetic processing is carried out.
Information that has been converted to digital becomes numerical information, and depending on the range of the numerical information obtained data having a bit width of 8 bits, 16 bits, 32 bits, or currently 64 bits or 128 bits, is used. Circuit types for processing this type of multi-bit information are generally classified into bit parallel circuits and bit serial circuits.
Bit parallel processing involves providing a calculating circuit for all bits, inputting datasequentially in bit units from the lower order bit, and performing calculation processing. It is noexaggeration to say that as well as microprocessors, almost all current processors adopt this method.
Bit serial processing is a method of computational processing where data is input in bit units sequentially from lower order bits every computation time unit (normally a clock). With this method it is possible to design computation circuits for 1 bit, and has the advantage that surface area is small. However, since this method to carries out processing from a lower order digit, there is the disadvantage that it takes am extremely long time to acquire data of the most significant digit.
If it could be said that either the high order digit or the low order has more important information, then normally the high order has the most important information. That is why the highest order digit is called the Most Significant Digit. However, carrying out the conventional bit serial processing from the low order digit causes a “carry signal” problem in addition computation etc.
In a carry signal and addition result generated by addition computation, first of all the digit (decimal number) as the first placed number is different, and it is not possible to handle in the same level.
Also, in the worst case there is a possibility of a carry signal generated from the least significant digit being propagated to the most significant digit, and it is necessary to determine a solution and a carry signal from the least significant digit. Computational processing from an upper digit is impossible in the present invention without solving this carry propagation problem.
Naturally, with computation that is not equivalent to a carry signal, such as a simple size judgement circuit, for example, there are arithmetic processing semiconductor circuits including comparative judgment from an upper digit. However, there are no inventions for arithmetic processing from an upper order digit including arithmetic processing so as to include a carry signal.
The object of the present invention is to provide an semiconductor circuit for arithmetic processing and an arithmetic processing method that can carry out arithmetic processing from an upper digit sequentially in bit serial format, with priority given to an upper order digit containing more important information.
In order to achieve the above described object, a first aspect of the present invention solves the problem of carry signal overflow in addition computation, a second aspect of the present invention solves the problem of carry propagation, a third aspect of the present invention solves the problem of computation speed for bit serial format, and a fourth aspect of the present invention makes it possible to perform complicated computation and processing, other than multiplication, from an upper digit.